home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / lists / mint / l_0399 / 24 < prev    next >
Internet Message Format  |  1994-08-27  |  4KB

  1. From: Stephen Usher <steve@earth.ox.ac.uk>
  2. Subject: Re: libraries
  3. Date: Mon, 18 Jan 93 9:22:06 BST
  4. In-Reply-To: <9301180318.AA05532@terminator.rs.itd.umich.edu>; from "Michal Jaegermann" at Jan 17, 93 8:16 pm
  5.  
  6. >I think that splitting header files AND libraries into common,
  7. >MiNT specific and TOS specific is something which should have been
  8. >done a long time ago.  Actually Jwahar, Eric and me we were talking
  9. >about that some while ago but there is quite a bit of work involved
  10. >in it.  Maybe you noticed that for some while Jwahar was moving
  11. >quietly in this direction.
  12. >
  13. >Still, in my opinion, a requirement for something like an explicit
  14. >#include <tos/foo.h> would be a mistake which will cause immediate
  15. >compatibility headaches, neccessity to edit sources, lotsa of
  16. >superfluous #ifdef...#endif and the like.
  17. >
  18. >I think that instead we should modify a little bit an organization
  19. >and a compiler driver.  Let us assume that we have two different files
  20. >.../include/tos/stdio.h and .../include/mint/stdio.h.  In sources
  21. >one should have one, unequivocal, directive '#include <stdio.h>'.
  22. >A compiler driver (like gcc, for example) with a flag '-tos' should
  23. >search for header files like this:
  24. >  .../include/tos/,.../include, <whatever else in include path>
  25. >and with '-mint' flag like this:
  26. >  .../include/mint/,.../include, <whatever else in include path>
  27. >with a similar arrangement for libraries.  One of flags '-mint' '-tos'
  28. >could/should be a default depending on a compiler configuration.
  29. >You risk that way at most a neccessity to recompile a driver, which
  30. >is really small program and can be redone even on the smallest
  31. >machines.  So what are your comments?
  32.  
  33. I think this would be a mistake. If possible the libraries should be unified
  34. and auto sensing so we don't have to worry if we got the correct binary from
  35. the archive. As for having separate sets of header files.. isn't it bad
  36. enough that we have two sets of libraries cluttering up our meagre disk
  37. space?
  38.  
  39. >
  40. >I think also that LF vs. CR/LF controversy is based on a
  41. >misunderstanding.  Maybe I got it wrong, but I thought that an
  42. >original proposition was about a form in which sources and updates are
  43. >distributed.  It is true that 'patch' will barf on you (although
  44. >'patch -l' should be ok, but it may other undesirable side effects) if
  45. >you have sources in one form and diffs in another but they are easily
  46. >convertible one way or another and there is likely 1001 ways to
  47. >acomplish that conversion.  Jwahar is using LF line terminator since
  48. >he keeps and maintains library sources on a Unix machine for the sake
  49. >of convenience but this does not mean that anybody else have to do
  50. >the same thing.  (Sending them via zmodem in an unpacked form as
  51. >text files will do that conversion for you - both ways :-)).
  52.  
  53. Zmodem's fine if you have an 8bit clean channel. Some of us don't. Also most
  54. of the stuff we are downloading are zoo archives which are binary data.
  55.  
  56. >
  57. >Julian asks why DTA is named _DTA in gcc header files.  I can guess
  58. >that this was done to be consistent with a convention that
  59. >internal "vendor names" start with '_' to avoid a polution of a name
  60. >space.  If Pure C needs DTA instead this is easy to resolve by
  61. >supplying in a "compatibility" header file "#define DTA _DTA".
  62. >As for conflicts in prototypes I really cannot tell.  I have never
  63. >seen Pure C compiler and I do not know where conflicts do occure.
  64. >I can only tell that gcc headers try very hard to follow ANSI C
  65. >Standard and comparing with other "more or less" Standard C compilers
  66. >on other machines are pretty good at it.
  67.  
  68. I agree, the GCC libs do the right thing and tally (mostly) with the Atari
  69. docs (at least the one I have).
  70.  
  71. >
  72. >   Michal
  73. >
  74.  
  75. Steve
  76.  
  77. -- 
  78. ---------------------------------------------------------------------------
  79. Computer Systems Administrator, Dept. of Earth Sciences, Oxford University.
  80. E-Mail: steve@uk.ac.ox.earth. Tel: Oxford (0865) 282110.
  81.